/*
 * Copyright (c) 1991-1994  Sony Corporation
 * 
 * Permission is hereby granted, free of charge, to any person obtaining
 * a copy of this software and associated documentation files (the
 * "Software"), to deal in the Software without restriction, including
 * without limitation the rights to use, copy, modify, merge, publish,
 * distribute, sublicense, and/or sell copies of the Software, and to
 * permit persons to whom the Software is furnished to do so, subject to
 * the following conditions:
 * 
 * The above copyright notice and this permission notice shall be
 * included in all copies or substantial portions of the Software.
 * 
 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
 * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
 * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
 * IN NO EVENT SHALL SONY CORPORATION BE LIABLE FOR ANY CLAIM,
 * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
 * OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR
 * THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 * 
 * Except as contained in this notice, the name of Sony Corporation
 * shall not be used in advertising or otherwise to promote the sale, use
 * or other dealings in this Software without prior written authorization
 * from Sony Corporation.
 *
 */

/*
 * $SonyRCSfile: sj_const.h,v $  
 * $SonyRevision: 1.1 $ 
 * $SonyDate: 1994/06/03 08:01:01 $
 */

#ifndef	_SJ_CONST

#define	_SJ_CONST
#include "sj_euc.h"

#define	MATCH		0
#define	OVER		1
#define	PARTLY		2
#define	CONT		3
#define	UNDER		4

#define	FALSE		0
#define	TRUE		-1

#define	AD_DONE		0x0000
#define	AD_NOTUSERDICT	0x0001
#define	AD_BADYOMI	0x0002
#define	AD_BADKANJI	0x0004
#define	AD_BADHINSI	0x0008

#define	AD_AREXIST	0x0010
#define	AD_OVFLWDOUBLK	0x0020
#define	AD_OVFLWDOUNUM	0x0040
#define	AD_OVFLWUSRDIC	0x0080
#define	AD_OVFLWINDEX	0x0100

#define	AD_NOMIDASI	0x0010
#define	AD_NOHINSI	0x0020
#define	AD_NOKANJI	0x0040

#define	C_WAKACHI	0x00
#define	C_MINASI	0x01
#define	C_BUNSETU	0x02
#define	C_DICT		0x03
#define	C_N_ARABIA	0x04
#define	C_N_ARACMA	0x05
#define	C_N_KAZU	0x06
#define	C_N_SUUJI	0x07
#define	C_N_NANSUU	0x08
#define	C_N_KANKURA	0x09
#define	C_N_ARAKURA	0x0a
#define	C_N_KAZULONG	0x0b
#define	C_N_KAZULCMA	0x0c
#define	C_N_SUUJILONG	0x0d

#define	JFLAG_N10	(1 << 15)
#define	JFLAG_N_1	(1 << 14)
#define	JFLAG_NS1	(1 << 13)
#define	JFLAG_N01	(1 << 12)
#define	JFLAG_N23	(1 << 11)
#define	JFLAG_NK2	(1 << 10)
#define	JFLAG_NK4	(1 << 9)
#define	JFLAG_NN0	(1 << 8)
#define	JFLAG_NSN	(1 << 7)
#define	JFLAG_KA	(1 << 0)

#define	DO_CLSTUDY	0x01
#define	DO_IKKATU	0x02

#define	K_DOUSHI	1
#define	K_YOUGEN	2
#define	K_TAIGEN	3
#define	K_FUKUSI	4
#define	K_RENTAISI	5
#define	K_SONOTA	6

#define EUC_a1          (u_char)0xa1
#define EUC_a2          (u_char)0xa2
#define EUC_a3          (u_char)0xa3
#define EUC_a4          (u_char)0xa4
#define EUC_a5          (u_char)0xa5


#define EUC_START       (u_char)0xa1
#define EUC_END         (u_char)0xfe
#define EUC_END_KIGOU   (u_char)0xae
#define EUC_0           (u_char)0xb0
#define EUC_END_0       (u_char)0xb9
#define EUC_A           (u_char)0xc1
#define EUC_END_A       (u_char)0xda
#define EUC_a           (u_char)0xe1
#define EUC_END_a       (u_char)0xfa
#define EUC_END_HIRA    (u_char)0xf3
#define EUC_VU          (u_char)0xf4
#define EUC_XKA         (u_char)0xf5
#define EUC_XKE         (u_char)0xf6

#define	isknj1(c)	(((c) == SS2) || (((c) & 0x80) && ((c) != SS3)))

#define	SHU		0x01
#define	T_KANOU		0x80
#define	T_SHUUJO	0x40

#define	DICTOP  	0x01
#define	FZKTOP		0x02
#define	DEPEND		0x04
#define	NUMBER		0x08
#define	FZK_KGU  	0x10
#define	TAI_KGU		0x20
#define	BEFORNUM	0x40
#define	MIDNUM		0x80
#define	NOTNRM		0xFE

#define	CNJEND		0xff
#define	TYOUONFLG	0x80

#define	MAXFREC		32
#define	MAXFLVL		10
#define	FZKEND		0xff

#define	SETTOU_O	1
#define	SETTOU_GO	2
#define	SETTOU_DAI	3
#define	SETTOU_KIGOU	4

#define	NUMKETALENGTH	16
#define	NUMWORDBUF	((NUMKETALENGTH+3)/4)


#endif
